using System;
using System.Collections.Generic;
using System.Text;

namespace MyAI.NeuralNetworkLib.Specification
{
    public interface INeuralLayer
    {
        void GenerateLayer(int inputVectorDimention, int neuronNumber, 
            NeuronTypes n_type, ActivationFunctionTypes af_type,
            List<double> afPrms);

        List<INeuron> GetNeurons();

        INeuron GetNeuron(int i);

        INeuralLayer CreateFilialLayer(int neuronNumber);

        List<double> CalculateOutput(List<double> inputVector);

        void AddNeuron(INeuron neuron);
    }
}
